對我而言,模型評估的重要性不亞於訓練模型。模型評估主要是幫助我們了解模型的準確性及可靠性,一個好的模型是經的起考驗的哈哈,今天將詳細介紹分類模型的評估方式。
Confusion Matrix可以說是分類模型的一哥,很多分類模型的指標都是從Confusion Matrix衍生出來的。
實際 YES | 實際 NO | |
---|---|---|
預測 YES | TP(True Positive) | FP(False Positive) |
預測 NO | FN(False Negative) | TN(True Negative) |
用Face ID作為例,假如手機在進行Face ID認證時,確認你的臉屬於手機擁有者的,它就會解鎖,這樣的情況就屬於TP(預測YES,實際YES)。但如果今天很不幸的你的帥(美)臉被Face ID認證失敗,這就屬於FN(預測NO,實際NO)。假設有個壞蛋想要解鎖你的手機但Face ID認證失敗,這就屬於TN(預測NO,實際NO)。但如果這個壞蛋用一些奇怪的變臉技術居然成功騙過Face ID認證,這就屬於FP(預測YES,實際NO)。
一般情況下,我們希望模型的TP跟TN多多益善,而FP(Type I Error)跟FN(Type II Error)希望少之又少。FP跟FN都算是Error,但錯的方式不同,根據不同的情境需要減少特定Error發生情況。
Accuracy = (TP + TN) / (TP + TN + FP + FN)
醫學領域常用盛行率(Prevalence)表示此指標。Accuracy是計算預測正確佔所有預測的比例,不過Accuracy有一個致命的問題,當TP數量較少時(資料集中沒有較多的實際正確資料),如果Accuracy是靠TN撐起來的而TN跟TP落差很大,那這個指標其實就不能算一個好的指標。進行垃圾郵件分類跟信用卡盜刷分類任務時,就可以發現實際為垃圾郵件跟實際被盜刷的資料相對稀少。
Recall = TP / (TP + FN)
醫學領域常用靈敏度(Sensitivity)表示此指標。Recall主要聚焦於TP在實際為YES的比例。舉個例子,如果我們針對產品做社群廣告投放,我們希望能觸及更多目標受眾提高市場覆蓋度時,recall就很重要。
Precision = TP / (TP + FP)
Precision主要聚焦於TP在預測為YES的比例。同樣以投放廣告為例子,如果今天預算有限,我們可能會更注重那些有高度相關性的受眾,而precision這時候就扮演重要的指標。
F1-score = 2 * (Precision * Recall) / (Precision + Recall)
F1-score結合了precision跟recall計算其調和平均數(Harmonic Mean),衡量模型在這兩個指標的綜合表現
恭喜林郁婷拿下奧運女子57公斤級金牌🎉,成功用拳頭打敗魔法。除此之外,也見證了詹庫杜拿下金牌,KD四面奧運金牌真的鬼,Curry首座奧運金牌歷史地位up up, 老詹拿下MVP,我的青青最後一次合體,痛哭流涕😭。
如何辨別機器學習模型的好壞?秒懂Confusion Matrix